 /**
  * 使用Promise 形式发送请求
  * @param {object} params 发网络请求，要传递的一个对象 
  */

let ajaxTime = 0;//发送网络请求的次数
export const request = (params)=>{
    // 如果请求的是私有接口，就加上token
    let header={...params.header};
    if(params.url.includes("/my/")){
        header["Authorization"]=wx.getStorageSync("token");
    }
    ajaxTime++;
    // 显示加载动画
    wx.showLoading({
        title: '加载中',
        mask: true,
    });

    const baseURL = "https://api-hmugo-web.itheima.net/api/public/v1";

    //  resolve 成功时的回调 他们都是方法
    // reject 失败时的回调 他们都是方法
    return new Promise((resolve,reject)=>{
        wx.request({
            // ... 解构
            ...params,
            header:header,
            url:baseURL+params.url,
            success: (result)=>{
                resolve(result.data.message)
              
            },
            fail: (err)=>{
                reject(err) 
               
            },
            complete:()=>{
                // 关闭加载动画
                ajaxTime--;
                if(ajaxTime===0){
                    wx.hideLoading();
                }
               
            }
        });
    })
}

/**
 * const 声明的变量叫 常量 就是不能变化的意思
 * export 导出
 */
// var m1 = ()=>{

//     return Date(()=>{

//     })
// }